﻿using CAD.DAL;
using CAD.DAL.compraDSTableAdapters;
using CAD.DTO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CAD.BLL
{
   public class compraBLL
    {

        private static compra rowToDto(compraDS.compra_SelectByIdRow row)
        {
            compra objCliente = new compra();
            objCliente.Estado = row.estado;
            objCliente.Estadocompra = row.estadocompra;
            objCliente.Fechacompra = row.fechacompra;
            objCliente.Fecharegistro = row.fecharegistro;
            objCliente.Id = row.id;
            objCliente.Idalmacen = row.idalmacen;
            objCliente.Idproveedor = row.idproveedor;
            objCliente.Idregistrador = row.idregistrador;
            objCliente.Idvendedor = row.idvendedor;
            objCliente.Nrodocumento = row.nrodocumento;
            objCliente.Observacion = row.observacion;
            objCliente.Tipocompra = row.tipocompra;
            objCliente.Total = row.total;
            objCliente.Idcaja = row.idcaja;
            return objCliente;
        }
        public static compra SelectByID(int id)
        {
            compra_SelectByIdTableAdapter adapter = new compra_SelectByIdTableAdapter();
            compraDS.compra_SelectByIdDataTable dtCliente = adapter.SelectByID(id);
            compra objCliente;
            try
            {
                objCliente = rowToDto(dtCliente[0]);
            }
            catch (Exception)
            {
                objCliente = null;
            }
            return objCliente;
        }
       public static int insertar(int idproveedor,int idvendedor,int idregistrador,int idalmacen,string tipocompra,DateTime fechacompra,DateTime fecharegistro,string estadocompra,string nrodocumento,double total,string observacion,int idcaja)
       {
           int? estudianteId = 0;
           compra_SelectByIdTableAdapter adapter = new compra_SelectByIdTableAdapter();
           adapter.insert(ref estudianteId, idproveedor, idvendedor, idregistrador, idalmacen, tipocompra, fechacompra, fecharegistro, estadocompra, nrodocumento, total, observacion, true, idcaja);
           int id = (int)estudianteId;
           return id;
       }
       public static void anular(int id)
       {
          compra_SelectByIdTableAdapter adapter = new compra_SelectByIdTableAdapter();
          adapter.anular(id,false);  
       }
       public static void updateestadocompra(int id, string estadocompra)
       {
           compra_SelectByIdTableAdapter adapter = new compra_SelectByIdTableAdapter();
           adapter.updateestadocompra(id,estadocompra);
       }
    }
}
